int run_test (void) {
	struct test_command *c;
	
	PREPARE_INTERRUPTS_HERE("intret");
	
	run ();
	
	asm volatile("jmp no_interrupts");
	asm volatile("intret:");
	
	c = get_current_command();
	if (! c->has_result) {
		// unpredicted interrupt
		return c->cmd;
	}
	
	cont (INTERRUPTS.int_info);
	
	asm volatile("no_interrupts:");
	
	return c->cmd;
}

/*
int run_until_flush (void)
{
	int res;
	//   printk("<1> SWITCH TO TEST CONTEXT\n");
	test_context();
	/// DON'T return until linux_context() !!!
	
	res = handle_until_flush ();
	if (0 == res)
		TESTER.cmd_ind ++; //handle CMD_FLUSH
		
		linux_context();
	//   printk("<1> SWITCH TO LINUX CONTEXT\n");
		
		return res;
}
*/
